home *** CD-ROM | disk | FTP | other *** search
/ Pascal Super Library / Pascal Super Library (CW International)(1997).bin / LIBRARY / PASCALL / NEETVGA / RGB / FERNROGR.PAS < prev    next >
Pascal/Delphi Source File  |  1993-02-26  |  2KB  |  80 lines

  1. unit fernrogr;
  2.  
  3. interface
  4. uses
  5.    fernando;
  6. type
  7.    palrgb=record
  8.       red,
  9.       green,
  10.       blue:byte;
  11.    end;
  12.    fullpalette=array [0..255] of palrgb;
  13.  
  14. procedure storefullpalette(var pal:fullpalette);
  15. procedure restorefullpalette(pal:fullpalette);
  16.  
  17. procedure getpalettecol(a:byte; var palcol:palrgb);
  18. procedure getpalettecolor(a:byte; var palcol:crgb);
  19.  
  20. procedure putpalettecolor(palcol:crgb);
  21.  
  22. implementation
  23.  
  24. procedure storefullpalette(var pal:fullpalette);
  25. var
  26.    a:byte;
  27. begin
  28.    for a:=0 to 255 do begin
  29.       port[$3c7]:=a;
  30.       with pal[a] do begin
  31.          red:=port[$3c9];
  32.          green:=port[$3c9];
  33.          blue:=port[$3c9];
  34.       end;
  35.    end;
  36. end;
  37.  
  38. procedure restorefullpalette(pal:fullpalette);
  39. var
  40.    a:byte;
  41. begin
  42.    for a:=0 to 255 do begin
  43.       port[$3c8]:=a;
  44.       with pal[a] do begin
  45.          port[$3c9]:=red;
  46.          port[$3c9]:=green;
  47.          port[$3c9]:=blue;
  48.       end;
  49.    end;
  50. end;
  51.  
  52. procedure getpalettecol(a:byte; var palcol:palrgb);
  53. begin
  54.    port[$3c7]:=a;
  55.    with palcol do begin
  56.       red:=port[$3c9];
  57.       green:=port[$3c9];
  58.       blue:=port[$3c9];
  59.    end;
  60. end;
  61.  
  62. procedure getpalettecolor(a:byte; var palcol:crgb);
  63. begin
  64.    port[$3c7]:=a;
  65.    with palcol do begin
  66.       color:=port[$3c7];
  67.       red:=port[$3c9];
  68.       green:=port[$3c9];
  69.       blue:=port[$3c9];
  70.    end;
  71. end;
  72.  
  73. procedure putpalettecolor(palcol:crgb);
  74. begin
  75.    with palcol do
  76.       setcolr(color,red,green,blue);
  77. end;
  78.       
  79. begin
  80. end.